#!/bin/bash

ORD_DEFI_DATA_PATH=/home/ubuntu/orddata
OrdDeFi_Inscribe_PATH=/home/ubuntu/OrdDeFi-Inscribe

case $1 in
    update)
      echo "开始更新索引";
      cd $ORD_DEFI_DATA_PATH;
      OrdDeFi-Virtual-Machine;
      echo "索引更新完毕";
    ;;
    balance)
      sh $0 update;
      cd $ORD_DEFI_DATA_PATH;
      OrdDeFi-Virtual-Machine --getaddressbalance $2;
    ;;
    utxo)
      sh $0 update;
      cd $ORD_DEFI_DATA_PATH;
      OrdDeFi-Virtual-Machine -checkutxotransfer "$2:0"
    ;;
    transfer_prepare)
      cd $ORD_DEFI_DATA_PATH;
      echo "{\"p\":\"orddefi\",\"op\":\"transfer\",\"tick\":\"$5\",\"amt\":\"$6\"}" > send.txt;
      OrdDeFi-Inscribe wallet --name $2 inscribe --fee-rate $3 --destination $4 --change $4 --file ./send.txt;
    ;;
    transfer)
      cd $ORD_DEFI_DATA_PATH;
      OrdDeFi-Inscribe wallet --name $2 send --fee-rate $3 $4 "$5:0:0"
    ;;
    send)
      cd $ORD_DEFI_DATA_PATH;
      echo "{\"p\":\"orddefi\",\"op\":\"transfer\",\"tick\":\"$7\",\"amt\":\"$8\",\"to\":\"$6\"}" > send.txt;
      OrdDeFi-Inscribe wallet --name $2 inscribe --fee-rate $3 --origin $4 --destination $4 --change $5 --file ./send.txt;
    ;;

    *)
      echo '更新索引:\t\t update';
      echo '查看余额:\t\t balance <地址>';
      echo '检查utxo:\t\t utxo <reveal的txid>';
      echo '转账准备:\t\t transfer_prepare <钱包名> <gas> <持有地址> <币种, 如odfi> <数量>';
      echo '执行转账:\t\t transfer <钱包名> <gas> <接受地址> <转账准备的reveal的txid>';
      echo '直接转账:\t\t send <钱包名> <gas> <持有地址> <找零地址> <接受地址> <币种> <数量>';
    ;;
esac